1. Field of the Invention
The present invention relates to an image processing apparatus, an image processing method, and a computer program product for carrying out the image processing. More specifically the present invention pertains to an image processing apparatus that causes input color image data to be subjected to a color correction process and outputs the color-adjusted image data, and a method of the same.
2. Description of the Related Art
In known image processing apparatuses, image data representing a color original are read with an image input unit, such as a scanner, and reproduced and displayed, for example, on a display like a CRT or with a color printer.
The image output units, such as displays and color printers, have characteristic color reproducing properties. In order to enable the color of an original color image input with a scanner to be accurately reproduced irrespective of the characteristics of the image output unit, some proposed techniques carry out color correction suitable for the color reproducing properties of the image output unit. One of such known techniques is disclosed in JAPANESE PATENT LAYING-OPEN GAZETTE No. 63-2669. This prior art technique uses a three-dimensional RGB color correction table that corresponds to all the possible combinations of three color components, R (red), G (green), and B (blue). Color correction data regarding all the positions in a color space defined by three-dimensional coordinates are stored in advance in this color correction table. The image processing apparatus refers to the color correction table to carry out color correction.
This prior art technique of color correction, however, requires an extremely large storage capacity for the color correction table and is thus not practical. By way of example, in case that input original color image data have 256 tones (8 bits) for the respective color components R, G, and B, the total number of colors is given as the third power of 256 that amounts to approximately 16780 thousands. Provided that resulting color-adjusted data are also 8-bit data, the total required capacity for the color correction table is 48 megabytes for the three color components R, G, and B.
Other prior art techniques of color correction proposed to reduce the required capacity of the color correction table store only data corresponding to restricted lattice points into the color correction table and correct color data between the lattice points by interpolation with data of the lattice points (for example, JAPANESE PATENT LAYING-OPEN GAZETTE No.4-14481 and No.4-185075). These techniques, however, require a relatively long time for interpolation, although reducing the storage capacity required for the color correction table. This is especially disadvantageous when image data have high resolution and fine tone expression for each pixel. This lengthens the operation time required for outputting one page of image and thereby the wait time for completed output of resulting images. Simplified interpolation, on the other hand, deteriorates the reproducing properties of color.
The applicant of the present invention has proposed an image processing technique that does not increase the storage capacity required for the color correction table nor require time-consuming interpolation for color correction (see, for example, JAPANESE PATENT LAYING-OPEN GAZETTE No. 7-30772). This image processing technique divides a color space at predetermined intervals, provides color correction data only for lattice points obtained by the division, and allocates image data between the lattice points to any one of the peripheral lattice points, thereby implementing color correction without interpolation. Allocation of the original image data to a peripheral lattice point causes an error. The technique accordingly allocates image data regarding each pixel included in an original image to any one of peripheral lattice points, in such a manner as to minimize the errors on average.
Although an error exists in color of each pixel, the prior art image processing technique virtually cancels the errors in a predetermined area. This significantly shortens the operation time required for image processing without deteriorating the quality of output images. Some deterioration of the picture quality is, however, observed in a low-density range, in case that the image output unit for outputting an image has a significantly small number of expressible tones, for example, an ink jet printer that enables only binary expression. In the low-density range where dots are sparsely distributed, even a small noise (that is, quantization error caused by allocation of image data to a peripheral lattice point) causes the position of dots to be significantly shifted.
This prior art image processing technique may allocate image data of adjoining pixels having the same color in the original image to different lattice points. Rough division of the color space for reducing the number of lattice points and decreasing the storage capacity of the color correction table may cause a significant difference between the output colors of these adjoining pixels. This results in deteriorating the quality of the output image.